﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SIAD.Model
{
    abstract class MinMaxStrategyType : IAStrategy
    {
        private Common.CASE_TYPE thePlayerType;

        public MinMaxStrategyType(Plateau thePlateau, Common.CASE_TYPE thePlayerType)
            : base(thePlateau, thePlayerType)
        {           
        }
        #region IAStrategy
        public abstract override void PlacePlayer();

        public abstract override void MovePlayer();

        public abstract override void DropBlock();
        #endregion

        #region Template Method
        /// <summary>
        /// Permet de calculer la valeur d'un déplacement pour un joueur
        /// </summary>
        /// <returns>la valeur du déplacement</returns>
        private int calculeJoueur()
        {
            return 0;
        }

        /// <summary>
        /// Permet de calculer la valeur d'un placement de bloc
        /// </summary>
        /// <returns></returns>
        private int calculeBloc()
        {
            return 0;
        }
        #endregion
    }
}
